Due to the widespread use of data communication networks, so-called home networks, in which household electric appliances, computers, and peripheral devices are connected in a household via a network so that they can communicate with each other, are becoming common. In the home network, network-connected devices communicate with each other to share the data processing functions of the devices, and content can be sent and received between the devices, thereby providing a convenient and comfortable environment to the users. It is expected that home networks will become more widespread.
As a protocol suitable for such home networks, the Universal Plug and Play (UPnP) is known. The Universal Plug and Play facilitates the construction of a network without requiring complicated operations and allows network-connected devices to receive services provided by the devices without requiring difficult operations or settings. UPnP is also advantageous in that devices can be easily added without being dependent on an OS (operating system) of the devices.
The UPnP allows connected devices to exchange definition files compliant with XML (extensible Markup Language) and to identify each other. An overview of the UPnP processing is:
(1) addressing processing for obtaining a device ID, such as an IP address, of a subject device;
(2) discovery processing for searching for devices on a network and receiving a response from each device to obtain information concerning a device type and function contained in the response; and
(3) service request processing for requesting each device to provide services based on the information obtained in the discovery processing.
By following the above-described processing procedure, the provision and reception of services by using network-connected devices can be implemented. A new device to connect to a network obtains a device ID by performing the addressing processing and obtains information concerning the other network-connected devices by performing the discovery processing so that it can request the other devices to provide services based on the obtained information.
For example, if content, such as music data or image data, stored in a server is played back in a client device, a client requests the server to send content information stored in the server, such as titles and artist names of music pieces or movies, data compression format information (ATRAC: adaptive transform acoustic coding, MPEG: moving picture experts group, etc.), and, if necessary, various content attribute information, such as copyright information. Such attribute information is referred to as “metadata” or “meta information”.
The server sends metadata (attribute information) concerning the content owned by the server in response to the request from the client. The client displays content information on a display of the client device based on the metadata obtained from the server according to a predetermined display program. For example, a music list including artist names, titles, etc. or an image data list is displayed on the display. The user checks or selects content to be played back based on the display information and sends a request to send the content to the server. The server receives the content request from the client and sends the content to the client in response to the received request. Then, the received content is played back in the client.
Content stored in the server within a home network can be accessed from another device connected to the network. For example, content can be obtained by a device performing a UPnP connection, which is the above-described simple device connection. Content includes various data, such as still image data, moving picture data, for example, movies, and music data, and a client as a network-connected device, for example, a display or a player, can obtain various items of content from the server to play back images and sound.
The server can store image data files, for example, photographs taken by users or image data obtained via, for example, the Internet. The stored image data can be displayed in a client, for example, a PC, provided with a display. The client requests the server to send image data, and the image data is sent from the server to the client and is displayed on the display of the client.
However, if image data, for example, an abstract picture or a photograph of a starry sky, is displayed on a client device, such as a PC, it may be difficult for the user to check whether the image is displayed at a correct angle, that is, whether it is displayed vertically and horizontally in correct directions. Generally, an image display program displaying images in an information processing apparatus, such as in a PC, changes the directions of images by, for example, rotating them by 90°, 180°, 270°, or 360°. While such rotation processing is being performed, the user may find it difficult to recognize the original angle of the image depending on the type of image data.
When sending image data from the server to a client, the server may change the angle of an image before sending it to the client. If the changed image data is sent and is directly displayed in the client, it is displayed at an incorrect angle. Even if the user attempts to rotate the image to display it correctly, it may be difficult to do so if he/she does not know the direction of the original image data or the correct image.
If information concerning correct directions of images is not added to various image data to be stored in the server, the user has to understand the correct direction of an image read from the server when the image is displayed and to change the angle. In this case, it may be difficult to do so depending on the image.
As the related art disclosing a configuration in which various additional information is set for image data and is provided, for example, Patent Document 1 (Japanese Unexamined Patent Application Publication No. 2002-91990) is available. Patent Document 1 discloses an on-demand image distribution system in which image information stored in a server is provided to client terminals, and as additional information concerning images stored in the server, titles, staff, machine position information, object position information, etc. are provided. In this document, however, a configuration in which angle information concerning original images or correct image data is provided is not disclosed, and thus, a configuration for solving the above-described problems is not disclosed.